package cn.tedu.egmvc3.controller;

import cn.tedu.egmvc3.mapper.EmpMapper;
import cn.tedu.egmvc3.pojo.entity.Emp;
import cn.tedu.egmvc3.pojo.vo.EmpVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.List;

@RestController
@RequestMapping("/emp")
public class EmpController {
    @Autowired(required = false)
    private EmpMapper empMapper;

    /**
     * 1.添加员工
     * 请求地址：/emp/insert
     * 请求方法：POST
     * 请求体数据：员工姓名title、员工工资salary、员工岗位job
     * 返回响应：String "添加成功"
     */
    @RequestMapping("/insert")
    public String insertEmp(Emp emp){
        empMapper.insertEmp(emp);
        return "添加员工完成";
    }

    /**
     * 2.查询所有员工的 姓名和岗位
     * 请求地址：/emp/select
     * 请求方法：GET
     * 查询参数：无
     * 返回响应：List<EmpVO>
     */
    @RequestMapping("/select")
    public List<EmpVO> selectEmpList(){
        return empMapper.selectEmpList();
    }

    /**
     * 3.修改员工信息
     * 请求地址：/emp/update
     * 请求方法：POST
     * 请求体数据：id=员工编号&title=员工姓名&salary=员工工资&job=员工岗位
     * 返回响应：String "修改成功"
     */
    @RequestMapping("/update")
    public String updateEmp(Emp emp){
        empMapper.updateEmp(emp);
        return "修改员工信息完成";
    }

    /**
     * 4.删除员工信息
     * 请求地址：/emp/delete?id=员工编号
     * 请求方法：GET
     * 查询参数：id=员工编号
     * 返回响应：字符串 "删除成功"
     */
    @RequestMapping("/delete")
    public String deleteEmp(Integer id){
        empMapper.deleteEmp(id);
        return "删除员工信息完成";
    }
}
